/*
 * TitleState.h
 *
 *  Created on: Jan 4, 2009
 *      Author: Michael
 */

#ifndef TITLESTATE_H_
#define TITLESTATE_H_

#include "GameState.h"

class TitleState: public GameState {

private:
	TitleState();
	static TitleState* inst;

	//textures we need
	IDirect3DTexture9* m_TitleScreen;
	D3DXVECTOR3 m_TitleScreenCenter;

public:
	static TitleState* Instance();

	//functions to handle initialization and clean up
	void Init();
	void CleanUp();

	//functions to handle pausing and resuming a state
	void Pause();
	void Resume();

	/*functions to handle main processes of states
	 * They will take a pointer to the main game
	 * so that they have easy access to game information
	 */
	void HandleInput(Prismatic* game);
	void Render(Prismatic* game);
	void Update(Prismatic* game);
};

#endif /* TITLESTATE_H_ */
